﻿
namespace Web7.Core.Security
{
    public interface IUser //: IPrincipal
    {
        #region renew
        
        string UserName { get; }
        string Email { get; }

        #endregion

        bool IsAuthenticated { get; }

        T Cast<T>() where T : class, IUser;

        //IDictionary<string, object> AuthenticationValues { get; }
        //string Name { get; }
        //bool IsInUserGroup(string userGroupName);
        //bool HasPermission(Guid permissionID);
        //bool HasPermission(string permissionName);
    }
}
